package com.xbongbong.saas.enums;

import com.xbongbong.i18n.util.I18nMessageUtil;
import lombok.Getter;

/**
 * saas详情tab汇总
 *
 * @author haibin.zhang
 * @version v1.0
 * @date 2019/1/24 14:38
 * @since v1.0
 */
@Getter
public enum DetailTabEnum {
    // 详情tab
    BASE_DETAIL_TAB("baseDetailTab","enum.detailTab.name.base_detail_tab"),

    //评论
    COMMENT("comment","enum.detailTab.name.comment"),

    //点赞
    LIKE("like","enum.detailTab.name.like"),

    SALE_TEAM("saleTeam","enum.detailTab.name.sale_team"),


    COMMUNICATE_RECORD("communicateRecord","enum.detailTab.name.communicate_record"),


    PRODUCT_LIST("productList","enum.detailTab.name.product_list"),


    MULTI_PRODUCT_LIST("multiProductList","enum.detailTab.name.multi_product_list"),


    IN_AND_OUT_PRODUCT_LIST("inAndOutProductList","enum.detailTab.name.in_and_out_product_list"),


    CALL_LOG("callLog","enum.detailTab.name.call_log"),


    CUSTOMER_STAGE("customerStage","enum.detailTab.name.customer_stage"),


    SALE_OPPORTUNITY("saleOpportunity","enum.detailTab.name.sale_opportunity"),


    WORK_ORDER_LOG("workOrderLog","enum.detailTab.name.work_order_log"),

    WORK_ORDER_V2_LOG("workOrderV2Log","enum.detailTab.name.work_order_v2_log"),


    RETURNED_RECORD("returnedRecord","enum.detailTab.name.returned_record"),


    INVOICE_HISTORY("invoiceHistory","enum.detailTab.name.invoice_history"),


    FILE_CABINET("fileCabinet","enum.detailTab.name.file_cabinet"),

    STAGE_HISTORY("customerStage","enum.detailTab.name.stage_history"),


    MARKETING_ACTIVITY_TAB("marketingActivityTab","enum.detailTab.name.marketing_activity_tab"),

    MARKETING_ACTIVITY_APPLICABLE_OBJECTS("marketingActivityApplicableObjects","enum.detailTab.name.marketing_activity_applicable_objects"),

    MARKETING_ACTIVITY_INAPPLICABLE_GOODS("marketingActivityApplicableGoods","enum.detailTab.name.marketing_activity_applicable_goods"),

    MARKETING_ACTIVITY_PREVIEW("marketingActivityPreview","enum.detailTab.name.marketing_activity_preview"),


    PROMOTION_ACTIVITY_TAB("promotionActivityTab","enum.detailTab.name.promotion_activity_tab"),

    PROMOTION_ACTIVITY_APPLICABLE_OBJECTS("promotionActivityApplicableObjects","enum.detailTab.name.promotion_activity_applicable_objects"),

    PROMOTION_ACTIVITY_APPLICABLE_GOODS("promotionActivityApplicableGoods","enum.detailTab.name.promotion_activity_applicable_goods"),



    ORI_STOCK("oriStock","enum.detailTab.name.ori_stock"),

    PARENT_AND_CHILD("parentAndChild","enum.detailTab.name.parent_and_child"),


    PAYMENT_SHEET("paymentSheet","enum.detailTab.name.payment_sheet"),


    PAY_SHEET("paySheet","enum.detailTab.name.pay_sheet"),


    INSTOCK_TAB("instockTab","enum.detailTab.name.instock_tab"),


    OUTSTOCK_TAB("outstockTab","enum.detailTab.name.outstock_tab"),


    COUPON_TAB("couponTab","enum.detailTab.name.coupon_tab"),


    CUSTOMER_INVOICE("customerInvoice","enum.detailTab.name.customer_invoice"),


    RED_INVOICE("redInvoice","enum.detailTab.name.red_invoice"),


    CUSTOMER_EXPRESS("customerExpress","enum.detailTab.name.customer_express"),


    SUPPLIER_PURCHASE("supplierPurchase","enum.detailTab.name.supplier_purchase"),


    SUPPLIER_PAYMENT("supplierPayment","enum.detailTab.name.supplier_payment"),


    PAYMENT("payment","enum.detailTab.name.payment"),


    RED_PAYMENT_SHEET("redPaymentSheet","enum.detailTab.name.red_payment_sheet"),

    RED_PAYMENT("redPayment","enum.detailTab.name.red_payment"),

    RED_PAY_SHEET("redPaySheet", "enum.detailTab.name.red_pay_sheet"),

    STRUCTURE("structure","enum.detailTab.name.structure"),


    PRODUCT_TAB("productTab","enum.detailTab.name.product_tab"),


    STOCK_TAB("productStockTab","enum.detailTab.name.stock_tab"),


    PERSON_TAB("productPersonTab","enum.detailTab.name.person_tab"),


    SUPPLIER_TAB("productSupplierTab","enum.detailTab.name.supplier_tab"),


    PURCHASE_TAB("productPurchaseTab","enum.detailTab.name.purchase_tab"),


    CONTRACT_TAB("contractTab","enum.detailTab.name.contract_tab"),


    PRODUCT_CONTRACT_TAB("productContractTab","enum.detailTab.name.product_contract_tab"),


    PRODUCT_INSTOCK_TAB("productInstockTab","enum.detailTab.name.product_instock_tab"),


    PRODUCT_OUTSTOCK_TAB("productOutstockTab","enum.detailTab.name.product_outstock_tab"),


    BATCH_TAB("productBatchTab","enum.detailTab.name.batch_tab"),


    GUARANTEE_TAB("productGuaranteeTab","enum.detailTab.name.guarantee_tab"),


    CONTACT_TAB("contactTab","enum.detailTab.name.contact_tab"),


    SUPPLIER_CONTACT_TAB("supplierContactTab","enum.detailTab.name.supplier_contact_tab"),


    PERFORMANCE("performance","enum.detailTab.name.performance"),


    RELEVANT_INVALID_INVOICE("relevantInvalidInvoice","enum.detailTab.name.relevant_invalid_invoice"),

    RELEVANT_INVALID_PURCHASE_INVOICE("relevantInvalidPurchaseInvoice", "enum.detailTab.name.relevant_invalid_purchase_invoice"),

    REFUND("refund","enum.detailTab.name.refund"),

    CONTRACT_RELEVANCE_PURCHASE("contractRelevancePurchase","enum.detailTab.name.contractRelevancePurchase"),


    PRODUCT_IMPLEMENTATION("productImplementation","enum.detailTab.name.product_implementation"),


    WORK_ORDER_PROGRESS("workOrderProgress","enum.detailTab.name.work_order_progress"),


    WORK_ORDER_DYNAMIC("workOrderDynamic","enum.detailTab.name.work_order_dynamic"),


    WORK_ORDER_EVALUATION("workOrderEvaluation","enum.detailTab.name.work_order_evaluation"),


    WORK_ORDER_CC("workOrderCc","enum.detailTab.name.work_order_cc"),


    PURCHASE_RETURNED("purchaseReturned","enum.detailTab.name.purchase_returned"),


    PANORAMA("panorama","enum.detailTab.name.panorama"),

    // 关联列表
    LINK_LIST("linkList","enum.detailTab.name.link_list"),


    VERSION_LIST("versionList","enum.detailTab.name.version_list"),

    /**
     * 信用管理
     */
    CREDIT_TEMPORARY_RECORD("creditTemporaryRecord","enum.detailTab.name.credit_temporary_record"),
    CREDIT_FIXED_RECORD("creditFixedRecord","enum.detailTab.name.credit_fixed_record"),
    CREDIT_CARD_BILL_RECORD("creditCardBillRecord","enum.detailTab.name.credit_card_bill"),

    QUOTATION("quotation","enum.detailTab.name.quotation"),


    CUSTOMER_QUOTATION("customerQuotation","enum.detailTab.name.customer_quotation"),

    OPPORTUNITY_QUOTATION("opportunityQuotation","enum.detailTab.name.opportunity_quotation"),

    // 费用管理
    REIMBURSEMENT_EXPENSE("reimbursementExpense", "enum.detailTab.name.reimbursement_expense"),
    CUSTOMER_EXPENSE("customerExpense", "enum.detailTab.name.customer_expense"),
    OPPORTUNITY_EXPENSE("opportunityExpense", "enum.detailTab.name.opportunity_expense"),
    CONTRACT_EXPENSE("contractExpense", "enum.detailTab.name.contract_expense"),

    //detailTab
    PAYMENT_MANAGEMENT("paymentManagement","enum.detailTab.name.payment_management"),


    PAYMENT_SHEET_RED_HISTORY("paymentSheetRedHistory","enum.detailTab.name.payment_sheet_red_history"),

    PAY_SHEET_RED_HISTORY("paySheetRedHistory", "enum.detailTab.name.pay_sheet_red_history"),
    //预收款余额Tab
    PREPAYMENT_AND_VERIFY("prepaymentAndVerify","enum.detailTab.name.prepayment_and_verify"),


    CONTRACT_VERIFY("contractVerify","enum.detailTab.name.contract_verify"),

    OTHER_INCOME_RED_HISTORY("otherIncomeRedHistory","enum.detailTab.name.other_income_red_history"),
    OTHER_EXPENSE_RED_HISTORY("otherExpenseRedHistory","enum.detailTab.name.other_expense_red_history"),

    RICH_TEXT("richText", "enum.detailTab.name.rich_text"),
    // 短信往来
    SMS_SEND_AND_REPLY("smsSendAndReply","enum.detailTab.name.sms_send_and_reply"),
    //detailTab
    PAY_PLAN_MANAGEMENT("payPlanManagement","enum.detailTab.name.pay_plan_management"),
    //预付款余额Tab
    PREPAY_AND_VERIFY("prepayAndVerify", "enum.detailTab.name.prepay_and_verify"),
    PURCHASE_VERIFY("purchaseVerify", "enum.detailTab.name.purchase_verify"),
    
    SALE_BUNDLE_MEMBER("saleBundleMember","enum.detailTab.name.sale_bundle_member"),
    SALE_BUNDLE_PLUG_IN("saleBundlePlugIn","enum.detailTab.name.sale_bundle_plug_in"),
    SALE_BUNDLE_ROBOT_LIST("saleBundleRobotList","enum.detailTab.name.sale_bundle_robot_list"),
    

    RED_RECEIVABLES_HISTORY("redReceivablesHistory","enum.detailTab.name.red_receivables_history"),

    ESIGN_UP("esignUp", "enum.detailTab.name.esign_up"),
    //活动成效
    ACTIVITY_EFFECT("activityEffect", "enum.detailTab.name.market_activity_effect"),
    //销售线索
    SALE_CLUE("saleClue", "enum.detailTab.name.sale_clue"),

    STATEMENT_DETAIL("statementDetail", "enum.detailTab.name.statement_detail"),

    DISTRIBUTOR_CONTACT("distributorContact", "enum.detailTab.name.distributor_contact"),
    DISTRIBUTOR_COMMUNICATE("distributorCommunicate", "enum.detailTab.name.distributor_communicate"),
    DISTRIBUTOR_ACCOUNT("distributorAccount", "enum.detailTab.name.distributor_account"),

    // 联系人组织树 & 机会联系人
    CONTACT_ORGANIZATION_TREE("contactOrganizationTree", "enum.detailTab.name.contact_organization_tree"),
    SALES_OPPORTUNITY_CONTACT("salesOpportunityContact", "enum.detailTab.name.sales_opportunity_contact"),

    // 竞争对手
    COMPETITOR_PANORAMIC_ANALYSIS("competitorPanoramicAnalysis", "enum.detailTab.name.competitor_panoramic_analysis"),
    COMPETITOR_VISBLE_RANGE("competitorVisibleRange", "enum.detailTab.name.competitor_visible_range"),
    COMPETITOR_LINKED_OPPORTUNITY("competitorLinkedOpportunity", "enum.detailTab.name.competitor_linked_opportunity"),
    COMPETITOR("competitor","enum.detailTab.name.competitor"),

    //审批记录
    APPROVAL_RECORDS("approvalRecords", "enum.detailTab.name.approval_records"),
    //审批流程
    APPROVAL_PROCESS("approvalProcess", "enum.detailTab.name.approval_process"),
    //审批历史
    APPROVAL_HISTORY("approvalHistory", "enum.detailTab.name.approval_history"),

    CONTRACT_COMPARE("contractCompare", "enum.detailTab.name.contract_compare"),

    //回执单
    RECEIPT_ORDER("receiptOrder", "enum.detailTab.name.receipt_order"),
    SERVICE_PERSON_TAB("servicePersonTab","enum.detailTab.name.person_tab"),
    // 关联工单
    WORK_ORDER_V2("workOrderV2", "enum.detailTab.name.work_order_v2"),
    // 关联产品
    LINK_PRODUCT("linkProduct", "enum.detailTab.name.link_product"),
    // 服务项目
    SERVICE_PROJECT("serviceProject", "enum.detailTab.name.service_project"),
    // 关联sla日志
    SLA_LOG("slaLog","enum.detailTab.name.sla_log"),

    WORK_ORDER_V2_DYNAMIC("workOrderV2Dynamic","enum.detailTab.name.work_order_v2_dynamic"),
    WORK_ORDER_V2_PROGRESS("workOrderV2Progress","enum.detailTab.name.work_order_v2_progress"),
    ;

    private String key;
    private String name;

    DetailTabEnum(String key, String name) {
        this.key = key;
        this.name = name;
    }

    public String getName() {
        return I18nMessageUtil.getMessage(name);
    }
}
